
load('T_at_time_7s.mat', 'T_at_time_7s');
% 创建一个新的空矩阵，大小为 (1001 + 228) x 1001
new_image = zeros(1001 + 228, 1001);

% 将T_at_time叠加228次，每次相对往上平移一行
for i = 1:228
    new_image(i:i+1000, :) = new_image(i:i+1000, :) + T_at_time_7s;
end

% 显示最终结果
figure;
imagesc(new_image);
axis xy;
xlabel('r (mm)');
ylabel('z (mm)');
title('Constructed Image with Overlapping T_at_time');
colorbar;











% % 参数设置
% c = 3.587;         % 热源的半径（单位：m）
% num_points = 100;  % 每个方向的网格点数
% r_min = -0.2;      % r轴的最小值
% r_max = 0.2;       % r轴的最大值
% z_min = -c;        % z轴的最小值
% z_max = c;         % z轴的最大值
% 
% % 划分网格
% r = linspace(r_min, r_max, num_points);   % 在r方向上生成网格
% z = linspace(z_min, z_max, num_points);   % 在z方向上生成网格
% [R, Z] = meshgrid(r, z);  % 创建网格坐标
% 
% % 初始化最终的温度场
% T_final = zeros(num_points, num_points);
% 
% % 假设T_at_time是根据偏微分方程计算得到的每个点的温度分布
% % 可以根据你的热传导方程计算每个点的温度。以下是一个简化的假设。
% % 这里以T_at_time作为每个z位置下的温度分布矩阵，按位置叠加。
% 
% for k = 1:num_points
%     % 计算每个z点的温度场（这里只是一个简化的假设，具体根据偏微分方程计算）
%     % 你可以根据你的热传导方程来计算每个z位置的温度T_at_z
%     T_at_z = calculate_temperature_at_z(R, Z, z(k));  % 这里调用一个函数计算z位置的温度
%     T_final = T_final + T_at_z;  % 将每个z位置的温度叠加
% end
% 
% % 绘制最终温度场
% figure;
% surf(R, Z, T_final);
% shading interp;  % 平滑颜色过渡
% xlabel('r (m)');
% ylabel('z (m)');
% title('Temperature Distribution');
% colorbar;  % 显示颜色条
% axis equal;  % 保证坐标轴比例相同
